package com.ruoyi.system.service;

import java.util.List;

import com.ruoyi.common.core.domain.R;
import com.ruoyi.system.domain.WOrder;
import com.ruoyi.system.domain.WOrderGood;
import com.ruoyi.system.domain.vo.WGoodExcel;
import com.ruoyi.system.domain.vo.WOrderGoodVO;
import com.ruoyi.system.domain.vo.WOrderVO;

/**
 * 物料订单Service接口
 * 
 * @author ruoyi
 * @date 2021-12-05
 */
public interface IWOrderService 
{
    /**
     * 查询物料订单
     * 
     * @param id 物料订单主键
     * @return 物料订单
     */
    public WOrderVO selectWOrderById(Long id);
    /**
     * 完成物流订单
     * @param id
     * @return
     */
    public R complete(Long id);

    /**
     * 查询物料订单列表
     * 
     * @param wOrder 物料订单
     * @return 物料订单集合
     */
    public List<WOrderVO> selectWOrderList(WOrderVO wOrder);
    
    /**
     * 创建订单导入物料数据
     */
    public  List<WGoodExcel> importDataGood( List<WGoodExcel> wGoodExcelList, Long customerId,   Long deptId);
    
    /**
     * 客户发料查询订单物品
     * @param orderId
     * @return
     */
    public  WOrderVO hairOrderGood( Long orderId);
    
    /**
     * 新增物料订单
     * 
     * @param wOrder 物料订单
     * @return 结果
     */
    public int insertWOrder(WOrderVO wOrderVO);
    
    
    public R updateWOrder(WOrderVO wOrderVO);
    
    
    public R addOrderPlan(WOrderVO wOrderVO);


    /**
     * 删除物料订单信息
     * 
     * @param id 物料订单主键
     * @return 结果
     */
    public R deleteWOrderById(Long id);
    /**
     * 取消物料订单
     * @param id
     * @return
     */
    public R cancelWOrderById(Long id);
}
